1. Field of the Invention
The present invention relates to a communication apparatus and method thereof.
2. Description of the Related Art
An ARQ (Automatic Repeat reQuest) has been used to improve communication quality in wireless communications. In the ARQ, when a receiving node receives a data frame correctly, the receiving node sends an ACK (ACKnowledgement) frame back to a transmitting node. On the other hand, when the receiving node receives a data frame incorrectly, the receiving node does not send the ACK frame. When the transmitting node has not received the ACK frame for a certain period, it retransmits the data frame.
One of the retransmission methods is a selective repeat ARQ. In the selective repeat ARQ, after the receiving node receives plural data frames from the transmitting node, the receiving node sends a BA (Block ACK) frame including a bitmap field to the transmitting node. The bitmap field includes a plurality of acknowledgment bits corresponding to the plural data frames. Each acknowledgment bit in the bitmap field indicates whether the corresponding data frame is correct or incorrect. When the acknowledgment bit is “1”, it means that the corresponding data frame is correct. On the other hand, when the acknowledgment bit is “0”, it means that the corresponding data frame is incorrect. The receiving node could not send back the BA frame, for example, when all data frames are incorrect. Actually, this depends on a communication system and implemented algorithm for the selective repeat ARQ. When the transmitting node receives the BA frame, it checks the acknowledgement bits of the bitmap field in the BA frame and retransmits the corresponding data frame when the corresponding acknowledgement bit is indicating as incorrect.
The selective repeat ARQ improves throughput performances, because it decreases an overhead by transmitting only one BA frame for plural data frames received instead of transmitting a plurality of ACK frames for plural data frames as in the ARQ.
The selective repeat ARQ is adopted in IEEE802.11e, which is one of the standards of wireless LAN, as disclosed in “Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications, Medium Access Control (MAC) Quality of Service (QoS) Enhancements,” IEEE Std. 802.11e-2005”. The selective repeat ARQ is called as Block ACK Mechanism in IEEE802.11e.
Hereinafter, a data frame is called as a MPDU (MAC Protocol Data Unit) as IEEE802.11e. As shown in FIG. 6, in the Block ACK Mechanism, a transmitting node Tx transmits plural MPDUs (five MPDU1-5 in FIG. 6) and a BAR (Block ACK Request) frame sequentially. The BAR frame is a control frame which requests a receiving node Rx to send back a BA frame. When the receiving node Rx receives the BAR frame, it sends back a BA frame to the transmitting node Tx. The BA frame is same as that in the selective repeat ARQ described above. In FIG. 6, the receiving node Rx fails to receive a MPDU2 with a sequence number of “2”. Therefore, the receiving node Rx sends back the BA frame with a bitmap field indicating that the MPDU2 is incorrect and the MPDU1,3-5 are correct. The transmitting node Tx receives the BA frame and checks the bitmap field in the BA frame, then retransmits the MPDU2, since the corresponding acknowledgement bit is indicating as incorrect.
Recently, IEEE802.11n adopts the Block ACK Mechanism.
IEEE802.11n also adopts a frame aggregation method to decreases more overheads. In the frame aggregation method, plural MPDUs are aggregated into a PHY frame called as an A-MPDU (Aggregated-MPDU).
As shown in FIG. 7, the transmitting node Tx transmits an A-MPDU including plural MPDU1-5. The receiving node Rx receives the A-MPDU and sends back a BA frame including a bitmap field to indicate that the MPDU2,3 are incorrect and the MPDU1,4-5 are correct.
Then, the transmitting node Tx receives the BA frame and checks the bitmap field in the BA frame, then retransmits an A-MPDU including MPDU2,3, since the corresponding acknowledgement bits are indicating as incorrect. If the receiving node Rx succeeds in receiving the MPDU2,3 in the retransmitted A-MPDU, it sends back a BA frame including a bitmap field to indicate that both MPDU2,3 are correct.
In IEEE802.11n, the receiving node Rx sends back a BA frame without receiving a BAR frame from the transmitting node Tx.
In the frame aggregation method, each MPDU includes a destination node address field. The destination node address fields of all MPDUs in the A-MPDU are set to a node address of the receiving node Rx. When at least one MPDU in the A-MPDU is received correctly, the receiving node Rx checks a destination node address of the MPDU received correctly. If the destination node address corresponds to the node address of the receiving node Rx, the receiving node Rx sends back a BA frame. If the destination node address does not correspond to the node address of the receiving node Rx, the receiving node Rx does not send back a BA frame.
Moreover, when all MPDUs in the A-MPDU are received incorrectly, the receiving node Rx does not send back a BA frame, since the receiving node Rx does not obtain the destination node address in the each MPDU and does not determine whether the A-MPDU is send to the own node, or to another node.
When the transmitting node Tx has not received a BA frame for a certain period (25 usec) since it had transmitted an A-MPDU, it regards as failing to transmit all MPDUs in the A-MPDU. Therefore, the transmitting node Tx retransmits the A-MPDU.
Under the environment with higher PER (Packet Error Rate), the receiving node Rx fails to receive more MPDUs. In the conventional Block ACK Mechanism described above, even if only one MPDU in the A-MPDU is received correctly, the receiving node Rx has to send back a BA frame.
In IEEE802.11n, BA frame is transmitted with a low transmission rate such as 24 Mbps. This transmission rate is selected from Basic Rate Set of IEEE802.11 for backward compatibility.
On the other hand, data frames such as A-MPDU and MPDU are transmitted with a high transmission rate of maximum 600 Mbps by using MIMO (Multi Input Multi Output) and extended channel bandwidth.
Because the difference of the transmission rate between data frame and BA frame is widen, it takes longer time to transmit a BA frame compared with a data frame. Therefore, the overhead due to transmission of BA frame increases relative to data frame.
As described above, the transmission of BA frame leads to increase overhead and causes a degradation of throughput performances in the Block ACK Mechanism, especially, under the environment with high PER. Moreover, this problem would be more severe with increasing the transmission rate of data frame in future.